Computer networks allow the distribution of information between many numbers of computer systems. Various computer program applications (i.e. software) and data communications protocols support a wide variety of different types of data communications and information exchange. As an example, a computer user using a web browser software application that operates on a local computer system can communicate using a hypertext transport protocol with remote computer systems known as web servers over a computer network such as the Internet to obtain web page content for viewing by the user on a local computer system. Other types of communication mechanisms include electronic mail, instant messaging, voice over network communication, and so forth.
One type of communication mechanism that is becoming popular is “syndicated streaming” or “feed” communication that allows a computer program known as a streaming feed reader or aggregator to operate on a networked computer system to periodically check a list of syndicated stream data “feeds” on behalf of a user and display any updated articles or other content that the application finds within those feeds. Feed readers or aggregators are able to subscribe to streaming data feeds that are essentially specially formatted files provided from remote computer systems such as web sites or other servers that are of interest to a user operating the aggregator. A set of standardized data formats collectively known as Really Simple Syndication (RSS) provide a simple extensible markup language (XML) based system that allows content or feed providers to identify available “channels” of content items in one of the RSS formats and allows users to subscribe to their favorite websites using the aggregator application. The aggregator is able to read the RSS formatted feed(s) selected by the user to list available content items within each channel (i.e. within each feed) for viewing by the user. Using RSS, webmasters or other content providers can thus put their content items into a standardized RSS data format (an XML format conforming to standard tags and conventions to list and describe content items), which can be accessed, viewed and organized through RSS-aware aggregator software or automatically conveyed as new content on another website.
A typical RSS streaming data feed comprises an XML file that defines a channel, and which RSS standardized tags define a title, link, description, and other optional fields/tags, followed by a series of content items, each of which have a set of tags used to indicate a title, link, and description of that content item. There can be many sets of content items (i.e. title, link and description tags with other optional fields/tags) in a single feed file and the RSS formatted files conform to one of several different standard RSS XML data formats (examples of which include RSS 1.0, RSS 2.0, Atom 0.3, and Atom 1.0). It is now common to find RSS (examples of which include RSS 1.0, RSS 2.0, Atom 0.3, and Atom 1.0) web feeds available for access on major or popular websites as well as on many smaller or less popular ones. RSS-aware aggregator or feed reader programs are available for download to various operating systems such as Windows and MacOS. Client-side RSS-based readers and aggregators are typically constructed as standalone programs or extensions to existing programs such as web browsers and are able to interpret the RSS data format to present the channels (i.e. feeds) and associated content items for selection by a user for viewing.
Any type of content that can be broken down into discrete content items can be syndicated via RSS. As an example, content such as recent changes to a web page such as a weblog, a revision history of a book, or new episodes of a TV show, new songs available from an artist, or the like can each be identified and formatted into an RSS feed. Once information about each content item is in RSS format, an RSS-aware program such as an aggregator can periodically check one or more feeds for changes and react to the changes in an appropriate way such as by displaying the newly available content selections for access by the user. Popular websites that are continuously developing new content for viewing by a user utilize RSS streaming data feeds to publish the content for access by aggregator applications operated by users who are interested in keeping up with current content available from those sites. A user may subscribe to many different feeds, each also known as a channel.
A typical aggregator program provides a graphical user interface that includes multiple display regions. A channel display region identifies various RSS feeds or “channels” that the user has configured the aggregator to obtain. When a user selects a particular channel in the channel display region, a content item selection region of the graphical user interface displays content items (e.g. as thumbnail icons, lists, or other list-oriented views) available from the channel (i.e., items described in the RSS data format for that feed). As an example, if the user selects a news channel from the channel selection region, the aggregator application will obtain the current RSS feed for that news channel and will display all available content selections such as all new stories within the content selection region. Each content item in the feed can be shown, for example, as a thumbnail or icon or textual line item representing content available for presentation to the user if the user were to choose that content item icon. The content item selections for a particular channel are independently identified within the RSS data format. Once the content items for a particular channel are shown for selection by the user, the user may then select a particular content item from the content selection region. In response, the aggregator will then obtain that item of content (e.g., by referencing a URL encoded within the RSS data format for that content item) and will play or otherwise reproduce or present that content in a content presentation display region (e.g., a play window) on the graphical user interface of the aggregator. Often the content items are videos or multimedia presentations, though they may be simply web pages or static text or audio. If the user selects a different channel from the channel selection region, the aggregator will read the current feed for that channel and change the content items within the content selection region to show all content items available for the new channel selection that are present in the feed. Again, the user may select a particular content item associated with that channel for viewing and the aggregator will access that particular content item and play that content in the content presentation region